Skip to content

Move core-cli-utils to private/ as a reference implementation (#56922)#56922

Open
huntie wants to merge 1 commit into
facebook:mainfrom
huntie:export-D105959855
Open

Move core-cli-utils to private/ as a reference implementation (#56922)#56922
huntie wants to merge 1 commit into
facebook:mainfrom
huntie:export-D105959855

Conversation

@huntie
Copy link
Copy Markdown
Member

@huntie huntie commented May 21, 2026

Summary:

Move react-native/core-cli-utils from packages/ to private/, stop publishing it to npm, and reframe it as a reference implementation of React Native CLI tooling.

The package has no known external consumers and is only used internally by private/helloworld/ and packages/rn-tester/. Publishing it to npm creates a maintenance surface for a package that serves no external users.

See react-native-community/discussions-and-proposals#1002.

Changes

  • Move packages/core-cli-utils/ to private/core-cli-utils/.
  • Convert all source files to CJS (require/module.exports) with Flow comment syntax (/*:: */), eliminating the runtime Babel dependency.
  • Remove from the JS build pipeline (scripts/build/config.js).
  • Remove the defunct patchCoreCLIUtilsPackageJSON() runtime patching from both helloworld/cli.js and rn-tester/cli.js, and delete both monorepo.js files that contained it.
  • Add as devDependency to rn-tester and helloworld.
  • Skip "*" version deps in _prepareHelloWorld() so they aren't rewritten to the Verdaccio-published version.
  • Remove redundant desktop import ignore entry (private/** already covers it).
  • Rewrite README as reference implementation documentation.

Changelog:
[General][Breaking] - The react-native/core-cli-utils package is no longer published. It remains available in the React Native repo as a reference implementation.

Differential Revision: D105959855

@meta-cla meta-cla Bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label May 21, 2026
@meta-codesync
Copy link
Copy Markdown

meta-codesync Bot commented May 21, 2026

@huntie has exported this pull request. If you are a Meta employee, you can view the originating Diff in D105959855.

@meta-codesync meta-codesync Bot changed the title Move core-cli-utils to private/ as a reference implementation Move core-cli-utils to private/ as a reference implementation (#56922) May 21, 2026
huntie added a commit to huntie/react-native that referenced this pull request May 21, 2026
…ok#56922)

Summary:
Pull Request resolved: facebook#56922

Move `react-native/core-cli-utils` from `packages/` to `private/`, stop publishing it to npm, and reframe it as a reference implementation of React Native CLI tooling.

The package has no known external consumers and is only used internally by `private/helloworld/` and `packages/rn-tester/`. Publishing it to npm creates a maintenance surface for a package that serves no external users.

See react-native-community/discussions-and-proposals#1002.

#### Changes

- Move `packages/core-cli-utils/` to `private/core-cli-utils/`
- Mark the package as `"private": true`, remove `publishConfig`, `files`, and `prepack` script
- Remove from the npm build pipeline (`scripts/build/config.js`)
- Remove the defunct `patchCoreCLIUtilsPackageJSON()` runtime patching from both `helloworld/cli.js` and `rn-tester/cli.js`, and delete both `monorepo.js` files that contained it
- Add missing `react-native/core-cli-utils` devDependency to `rn-tester/package.json`
- Add `core-cli-utils` as a workspace in both `xplat/js/package.json` and `xplat/js/public/package.json`
- Remove redundant desktop import ignore entry (`private/**` already covers it)
- Rewrite README as reference implementation documentation

Changelog: [Internal]

Differential Revision: D105959855
@huntie huntie force-pushed the export-D105959855 branch from d9db47d to 15008ec Compare May 21, 2026 16:53
huntie added a commit to huntie/react-native that referenced this pull request May 21, 2026
…ok#56922)

Summary:
Pull Request resolved: facebook#56922

Move `react-native/core-cli-utils` from `packages/` to `private/`, stop publishing it to npm, and reframe it as a reference implementation of React Native CLI tooling.

The package has no known external consumers and is only used internally by `private/helloworld/` and `packages/rn-tester/`. Publishing it to npm creates a maintenance surface for a package that serves no external users.

See react-native-community/discussions-and-proposals#1002.

#### Changes

- Move `packages/core-cli-utils/` to `private/core-cli-utils/`
- Mark the package as `"private": true`, remove `publishConfig`, `files`, and `prepack` script
- Remove from the npm build pipeline (`scripts/build/config.js`)
- Remove the defunct `patchCoreCLIUtilsPackageJSON()` runtime patching from both `helloworld/cli.js` and `rn-tester/cli.js`, and delete both `monorepo.js` files that contained it
- Add missing `react-native/core-cli-utils` devDependency to `rn-tester/package.json`
- Add `core-cli-utils` as a workspace in both `xplat/js/package.json` and `xplat/js/public/package.json`
- Remove redundant desktop import ignore entry (`private/**` already covers it)
- Rewrite README as reference implementation documentation

Changelog: [Internal]

Differential Revision: D105959855
@huntie huntie force-pushed the export-D105959855 branch from 15008ec to b3142fd Compare May 21, 2026 19:22
huntie added a commit to huntie/react-native that referenced this pull request May 21, 2026
…ok#56922)

Summary:
Pull Request resolved: facebook#56922

Move `react-native/core-cli-utils` from `packages/` to `private/`, stop publishing it to npm, and reframe it as a reference implementation of React Native CLI tooling.

The package has no known external consumers and is only used internally by `private/helloworld/` and `packages/rn-tester/`. Publishing it to npm creates a maintenance surface for a package that serves no external users.

See react-native-community/discussions-and-proposals#1002.

#### Changes

- Move `packages/core-cli-utils/` to `private/core-cli-utils/`
- Mark the package as `"private": true`, remove `publishConfig`, `files`, and `prepack` script
- Remove from the npm build pipeline (`scripts/build/config.js`)
- Remove the defunct `patchCoreCLIUtilsPackageJSON()` runtime patching from both `helloworld/cli.js` and `rn-tester/cli.js`, and delete both `monorepo.js` files that contained it
- Add missing `react-native/core-cli-utils` devDependency to `rn-tester/package.json`
- Add `core-cli-utils` as a workspace in both `xplat/js/package.json` and `xplat/js/public/package.json`
- Remove redundant desktop import ignore entry (`private/**` already covers it)
- Rewrite README as reference implementation documentation

Changelog: [Internal]

Differential Revision: D105959855
@huntie huntie force-pushed the export-D105959855 branch from b3142fd to e8fb7b7 Compare May 21, 2026 19:29
huntie added a commit to huntie/react-native that referenced this pull request May 21, 2026
…ok#56922)

Summary:
Pull Request resolved: facebook#56922

Move `react-native/core-cli-utils` from `packages/` to `private/`, stop publishing it to npm, and reframe it as a reference implementation of React Native CLI tooling.

The package has no known external consumers and is only used internally by `private/helloworld/` and `packages/rn-tester/`. Publishing it to npm creates a maintenance surface for a package that serves no external users.

See react-native-community/discussions-and-proposals#1002.

#### Changes

- Move `packages/core-cli-utils/` to `private/core-cli-utils/`
- Mark the package as `"private": true`, remove `publishConfig`, `files`, and `prepack` script
- Remove from the npm build pipeline (`scripts/build/config.js`)
- Remove the defunct `patchCoreCLIUtilsPackageJSON()` runtime patching from both `helloworld/cli.js` and `rn-tester/cli.js`, and delete both `monorepo.js` files that contained it
- Add missing `react-native/core-cli-utils` devDependency to `rn-tester/package.json`
- Add `core-cli-utils` as a workspace in both `xplat/js/package.json` and `xplat/js/public/package.json`
- Remove redundant desktop import ignore entry (`private/**` already covers it)
- Rewrite README as reference implementation documentation

Changelog: [Internal]

Differential Revision: D105959855
@huntie huntie force-pushed the export-D105959855 branch 2 times, most recently from d3d8c59 to 46da633 Compare May 21, 2026 22:16
huntie added a commit to huntie/react-native that referenced this pull request May 21, 2026
…ok#56922)

Summary:
Pull Request resolved: facebook#56922

Move `react-native/core-cli-utils` from `packages/` to `private/`, stop publishing it to npm, and reframe it as a reference implementation of React Native CLI tooling.

The package has no known external consumers and is only used internally by `private/helloworld/` and `packages/rn-tester/`. Publishing it to npm creates a maintenance surface for a package that serves no external users.

See react-native-community/discussions-and-proposals#1002.

#### Changes

- Move `packages/core-cli-utils/` to `private/core-cli-utils/`
- Mark the package as `"private": true`, remove `publishConfig`, `files`, and `prepack` script
- Remove from the npm build pipeline (`scripts/build/config.js`)
- Remove the defunct `patchCoreCLIUtilsPackageJSON()` runtime patching from both `helloworld/cli.js` and `rn-tester/cli.js`, and delete both `monorepo.js` files that contained it
- Add missing `react-native/core-cli-utils` devDependency to `rn-tester/package.json`
- Add `core-cli-utils` as a workspace in both `xplat/js/package.json` and `xplat/js/public/package.json`
- Remove redundant desktop import ignore entry (`private/**` already covers it)
- Rewrite README as reference implementation documentation

Changelog:
[General][Breaking] - The `react-native/core-cli-utils` package is no longer published. It remains available in the React Native repo as a reference implementation.

Differential Revision: D105959855
@huntie huntie force-pushed the export-D105959855 branch from 46da633 to 07496ee Compare May 22, 2026 10:56
huntie added a commit to huntie/react-native that referenced this pull request May 22, 2026
…ok#56922)

Summary:
Pull Request resolved: facebook#56922

Move `react-native/core-cli-utils` from `packages/` to `private/`, stop publishing it to npm, and reframe it as a reference implementation of React Native CLI tooling.

The package has no known external consumers and is only used internally by `private/helloworld/` and `packages/rn-tester/`. Publishing it to npm creates a maintenance surface for a package that serves no external users.

See react-native-community/discussions-and-proposals#1002.

#### Changes

- Move `packages/core-cli-utils/` to `private/core-cli-utils/`.
- Convert all source files to CJS (require/module.exports) with Flow comment syntax (/*:: */), eliminating the runtime Babel dependency.
 - Remove from the JS build pipeline (`scripts/build/config.js`).
 - Remove the defunct `patchCoreCLIUtilsPackageJSON()` runtime patching from both `helloworld/cli.js` and `rn-tester/cli.js`, and delete both `monorepo.js` files that contained it.
  - Add as `devDependency` to `rn-tester` and `helloworld`.
  - Skip `"*"` version deps in `_prepareHelloWorld()` so they aren't rewritten to the Verdaccio-published version.
  - Remove redundant desktop import ignore entry (`private/**` already covers it).
  - Rewrite README as reference implementation documentation.

Changelog:
[General][Breaking] - The `react-native/core-cli-utils` package is no longer published. It remains available in the React Native repo as a reference implementation.

Differential Revision: D105959855
…ok#56922)

Summary:
Pull Request resolved: facebook#56922

Move `react-native/core-cli-utils` from `packages/` to `private/`, stop publishing it to npm, and reframe it as a reference implementation of React Native CLI tooling.

The package has no known external consumers and is only used internally by `private/helloworld/` and `packages/rn-tester/`. Publishing it to npm creates a maintenance surface for a package that serves no external users.

See react-native-community/discussions-and-proposals#1002.

#### Changes

- Move `packages/core-cli-utils/` to `private/core-cli-utils/`.
- Convert all source files to CJS (require/module.exports) with Flow comment syntax (/*:: */), eliminating the runtime Babel dependency.
 - Remove from the JS build pipeline (`scripts/build/config.js`).
 - Remove the defunct `patchCoreCLIUtilsPackageJSON()` runtime patching from both `helloworld/cli.js` and `rn-tester/cli.js`, and delete both `monorepo.js` files that contained it.
  - Add as `devDependency` to `rn-tester` and `helloworld`.
  - Skip `"*"` version deps in `_prepareHelloWorld()` so they aren't rewritten to the Verdaccio-published version.
  - Remove redundant desktop import ignore entry (`private/**` already covers it).
  - Rewrite README as reference implementation documentation.

Changelog:
[General][Breaking] - The `react-native/core-cli-utils` package is no longer published. It remains available in the React Native repo as a reference implementation.

Differential Revision: D105959855
@huntie huntie force-pushed the export-D105959855 branch from 07496ee to 742a277 Compare May 22, 2026 12:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. fb-exported meta-exported p: Facebook Partner: Facebook Partner

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant